let time = new St.Label({ style_class: 'world-clocks-time' });
- let otherOffset = this._getTimeAtLocation(l).get_utc_offset();
- let offset = (otherOffset - localOffset) / GLib.TIME_SPAN_HOUR;
- let fmt = Math.trunc(offset) == offset ? '%s%.0f' : '%s%.1f';
- let prefix = offset >= 0 ? '+' : '-';
- let tz = new St.Label({ style_class: 'world-clocks-timezone',
- text: fmt.format(prefix, Math.abs(offset)),
- x_align: Clutter.ActorAlign.END,
- y_align: Clutter.ActorAlign.CENTER });
+ const utcOffset = this._getTimeAtLocation(l).get_utc_offset();
+ const offsetCurrentTz = utcOffset - localOffset;
+ const offsetHours = offsetCurrentTz / GLib.TIME_SPAN_HOUR;
+
+ const fmt = Math.trunc(offsetHours) == offsetHours ? '%s%.0f' : '%s%.1f';
+ const prefix = offsetCurrentTz >= 0 ? '+' : '-';
+
+ const tz = new St.Label({
+ style_class: 'world-clocks-timezone',
+ text: fmt.format(prefix, Math.abs(offsetHours)),
+ x_align: Clutter.ActorAlign.END,
+ y_align: Clutter.ActorAlign.CENTER,
+ });
time.clutter_text.ellipsize = Pango.EllipsizeMode.NONE;
tz.clutter_text.ellipsize = Pango.EllipsizeMode.NONE;